package com.depthsdata.coe.service;
/**
 * Template Name : DTO数据对象
 * Template Version : 1
 * Template Last Modfiy Date : Fri Nov 30 16:49:33 CST 2018
 * Auto Generate Date : 2019-12-27 11:41:50
  * Warning ! This file will be overwrite when regenerate !
  * 
 */

import java.util.Map;
import java.util.HashMap;
import org.apache.commons.lang.ArrayUtils;
import org.apache.commons.beanutils.BeanMap;
import net.dao.IDataPopulateCallback;


public class BusinessNodeBean implements java.io.Serializable {

        
	private static Map<String,String> mappedDaoFields = new HashMap<String,String>();
    
	private com.depthsdata.coe.dao.BusinessNode businessNode;

	protected BeanMap getBeanMap(){
	
		return new BeanMap(businessNode);
	}
	
	static{
				
												
		mappedDaoFields.put("id",com.depthsdata.coe.dao.IBusinessNodeDAO.Id);
		
																																														
				
																
		mappedDaoFields.put("businessProcessId",com.depthsdata.coe.dao.IBusinessNodeDAO.BusinessProcessId);
		
																																										
				
																				
		mappedDaoFields.put("parentBusinessNodeId",com.depthsdata.coe.dao.IBusinessNodeDAO.ParentBusinessNodeId);
		
																																						
				
																								
		mappedDaoFields.put("preBusinesNodeId",com.depthsdata.coe.dao.IBusinessNodeDAO.PreBusinesNodeId);
		
																																		
				
																												
		mappedDaoFields.put("nextBusinessNodeId",com.depthsdata.coe.dao.IBusinessNodeDAO.NextBusinessNodeId);
		
																														
				
																																
		mappedDaoFields.put("businessNodeName",com.depthsdata.coe.dao.IBusinessNodeDAO.BusinessNodeName);
		
																										
				
																																				
		mappedDaoFields.put("businessNodeType",com.depthsdata.coe.dao.IBusinessNodeDAO.BusinessNodeType);
		
																						
				
																																								
		mappedDaoFields.put("deleteFlag",com.depthsdata.coe.dao.IBusinessNodeDAO.DeleteFlag);
		
																		
				
																																												
		mappedDaoFields.put("status",com.depthsdata.coe.dao.IBusinessNodeDAO.Status);
		
														
				
																																																
		mappedDaoFields.put("remarks",com.depthsdata.coe.dao.IBusinessNodeDAO.Remarks);
		
										
				
																																																				
		mappedDaoFields.put("processDiagramNodeId",com.depthsdata.coe.dao.IBusinessNodeDAO.ProcessDiagramNodeId);
		
						
				
				
	}
	
	public static String getMappedDAOField(String aAttrName){
		return mappedDaoFields.get(aAttrName);
	}
	
	
	public BusinessNodeBean() {
		super();
	    		
		this.businessNode = new com.depthsdata.coe.dao.BusinessNode();
                
	}
	
		
	public BusinessNodeBean(com.depthsdata.coe.dao.BusinessNode businessNode) {
		super();
	
		this.businessNode = businessNode;
		
	}
		
		
		
    	
	public com.depthsdata.coe.dao.BusinessNode convertToBusinessNode(){
		return this.businessNode;
	}
	
	public com.depthsdata.coe.dao.BusinessNode convertTo(){
		return this.businessNode;
	}
	
			
		
			
			
		
	/**
	 * Get id
	 * 
	 * @return long
	 */
	public long getId(){
		return (long) this.businessNode.getId();
	}
	
	/**
	 * Set id
	 * 
	 * @parameter long
	 */
	public void setId(long id){
		
		this.businessNode.setId(id);
	}
		
																							
		
		
					
			
		
	/**
	 * Get businessProcessId
	 * 
	 * @return long
	 */
	public long getBusinessProcessId(){
		return (long) this.businessNode.getBusinessProcessId();
	}
	
	/**
	 * Set businessProcessId
	 * 
	 * @parameter long
	 */
	public void setBusinessProcessId(long businessProcessId){
		
		this.businessNode.setBusinessProcessId(businessProcessId);
	}
		
																					
		
		
							
			
		
	/**
	 * Get parentBusinessNodeId
	 * 
	 * @return long
	 */
	public long getParentBusinessNodeId(){
		return (long) this.businessNode.getParentBusinessNodeId();
	}
	
	/**
	 * Set parentBusinessNodeId
	 * 
	 * @parameter long
	 */
	public void setParentBusinessNodeId(long parentBusinessNodeId){
		
		this.businessNode.setParentBusinessNodeId(parentBusinessNodeId);
	}
		
																			
		
		
									
			
		
	/**
	 * Get preBusinesNodeId
	 * 
	 * @return long
	 */
	public long getPreBusinesNodeId(){
		return (long) this.businessNode.getPreBusinesNodeId();
	}
	
	/**
	 * Set preBusinesNodeId
	 * 
	 * @parameter long
	 */
	public void setPreBusinesNodeId(long preBusinesNodeId){
		
		this.businessNode.setPreBusinesNodeId(preBusinesNodeId);
	}
		
																	
		
		
											
			
		
	/**
	 * Get nextBusinessNodeId
	 * 
	 * @return long
	 */
	public long getNextBusinessNodeId(){
		return (long) this.businessNode.getNextBusinessNodeId();
	}
	
	/**
	 * Set nextBusinessNodeId
	 * 
	 * @parameter long
	 */
	public void setNextBusinessNodeId(long nextBusinessNodeId){
		
		this.businessNode.setNextBusinessNodeId(nextBusinessNodeId);
	}
		
															
		
		
													
			
		
	/**
	 * Get businessNodeName
	 * 
	 * @return String
	 */
	public String getBusinessNodeName(){
		return (String) this.businessNode.getBusinessNodeName();
	}
	
	/**
	 * Set businessNodeName
	 * 
	 * @parameter String
	 */
	public void setBusinessNodeName(String businessNodeName){
		
		this.businessNode.setBusinessNodeName(businessNodeName);
	}
		
													
		
		
															
			
		
	/**
	 * Get businessNodeType
	 * 
	 * @return String
	 */
	public String getBusinessNodeType(){
		return (String) this.businessNode.getBusinessNodeType();
	}
	
	/**
	 * Set businessNodeType
	 * 
	 * @parameter String
	 */
	public void setBusinessNodeType(String businessNodeType){
		
		this.businessNode.setBusinessNodeType(businessNodeType);
	}
		
											
		
		
																	
			
		
	/**
	 * Get deleteFlag
	 * 
	 * @return long
	 */
	public long getDeleteFlag(){
		return (long) this.businessNode.getDeleteFlag();
	}
	
	/**
	 * Set deleteFlag
	 * 
	 * @parameter long
	 */
	public void setDeleteFlag(long deleteFlag){
		
		this.businessNode.setDeleteFlag(deleteFlag);
	}
		
									
		
		
																			
			
		
	/**
	 * Get status
	 * 
	 * @return String
	 */
	public String getStatus(){
		return (String) this.businessNode.getStatus();
	}
	
	/**
	 * Set status
	 * 
	 * @parameter String
	 */
	public void setStatus(String status){
		
		this.businessNode.setStatus(status);
	}
		
							
		
		
																					
			
		
	/**
	 * Get remarks
	 * 
	 * @return String
	 */
	public String getRemarks(){
		return (String) this.businessNode.getRemarks();
	}
	
	/**
	 * Set remarks
	 * 
	 * @parameter String
	 */
	public void setRemarks(String remarks){
		
		this.businessNode.setRemarks(remarks);
	}
		
					
		
		
																							
			
		
	/**
	 * Get processDiagramNodeId
	 * 
	 * @return String
	 */
	public String getProcessDiagramNodeId(){
		return (String) this.businessNode.getProcessDiagramNodeId();
	}
	
	/**
	 * Set processDiagramNodeId
	 * 
	 * @parameter String
	 */
	public void setProcessDiagramNodeId(String processDiagramNodeId){
		
		this.businessNode.setProcessDiagramNodeId(processDiagramNodeId);
	}
		
			
		
			
			
			
			
			
			
			
			
			
			
			
			
			
	
	public int hashCode() {
   		return org.apache.commons.lang.builder.HashCodeBuilder.reflectionHashCode(this);
 	}
	
		
	public boolean equals(Object obj) {
		if (obj == null) {
            return false;
        } // end if

        if ((obj instanceof BusinessNodeBean) == false) {
            return false;
        } // end if

        BusinessNodeBean other = (BusinessNodeBean) obj;
        
        boolean isEqual = false;
        
                
        com.depthsdata.coe.dao.BusinessNode tempBusinessNode = other.convertToBusinessNode();
        
        if(tempBusinessNode == null || this.businessNode == null){
        	isEqual = false;
        }
        else if(tempBusinessNode == this.businessNode || tempBusinessNode.equals(this.businessNode) ){
        	isEqual = true;
        }
        else{
        	isEqual = false;
        }
        
        return isEqual;
	}
	
	
	public static BusinessNodeBean[] toArray(com.depthsdata.coe.dao.BusinessNode[] aBusinessNodes){
		
		return toArray(aBusinessNodes,null);
	}
	
	public static BusinessNodeBean[] toArray(com.depthsdata.coe.dao.BusinessNode[] aBusinessNodes , IDataPopulateCallback aCallBack){
		 
		 if(ArrayUtils.isEmpty(aBusinessNodes)){
		 	return new BusinessNodeBean[0];
		 }
		 
		 int length = aBusinessNodes.length;
		 
		 BusinessNodeBean[] beans = new BusinessNodeBean[length];
		  
		 for (int i = 0; i < length; i++) {
			beans[i] = new BusinessNodeBean(aBusinessNodes[i]);
			if(aCallBack != null){
			    aCallBack.populate(beans[i],new Object[]{aBusinessNodes[i]});
			}
		 }
		 
		 return beans;
	 }
	 
	 	 
}